home *** CD-ROM | disk | FTP | other *** search
/ NOVA - For the NeXT Workstation / NOVA - For the NeXT Workstation.iso / SourceCode / AdobeExamples / NX_ImportAdv / SaveAsPanel.m < prev    next >
Text File  |  1992-12-19  |  3KB  |  121 lines

  1.  
  2. /*
  3.  * (a)  (C) 1990 by Adobe Systems Incorporated. All rights reserved.
  4.  *
  5.  * (b)  If this Sample Code is distributed as part of the Display PostScript
  6.  *    System Software Development Kit from Adobe Systems Incorporated,
  7.  *    then this copy is designated as Development Software and its use is
  8.  *    subject to the terms of the License Agreement attached to such Kit.
  9.  *
  10.  * (c)  If this Sample Code is distributed independently, then the following
  11.  *    terms apply:
  12.  *
  13.  * (d)  This file may be freely copied and redistributed as long as:
  14.  *    1) Parts (a), (d), (e) and (f) continue to be included in the file,
  15.  *    2) If the file has been modified in any way, a notice of such
  16.  *      modification is conspicuously indicated.
  17.  *
  18.  * (e)  PostScript, Display PostScript, and Adobe are registered trademarks of
  19.  *    Adobe Systems Incorporated.
  20.  * 
  21.  * (f) THE INFORMATION BELOW IS FURNISHED AS IS, IS SUBJECT TO
  22.  *    CHANGE WITHOUT NOTICE, AND SHOULD NOT BE CONSTRUED
  23.  *    AS A COMMITMENT BY ADOBE SYSTEMS INCORPORATED.
  24.  *    ADOBE SYSTEMS INCORPORATED ASSUMES NO RESPONSIBILITY
  25.  *    OR LIABILITY FOR ANY ERRORS OR INACCURACIES, MAKES NO
  26.  *    WARRANTY OF ANY KIND (EXPRESS, IMPLIED OR STATUTORY)
  27.  *    WITH RESPECT TO THIS INFORMATION, AND EXPRESSLY
  28.  *    DISCLAIMS ANY AND ALL WARRANTIES OF MERCHANTABILITY, 
  29.  *    FITNESS FOR PARTICULAR PURPOSES AND NONINFRINGEMENT
  30.  *    OF THIRD PARTY RIGHTS.
  31.  */
  32.  
  33. /*
  34.  *    SaveAsPanel.m
  35.  *
  36.  *    Necessary because of the difficulty of obtaining a copy
  37.  *    of the SavePanel. This subclass of panel uses the SavePanel
  38.  *    panel and switches the panel from Save to a Save As to Save Selection.
  39.  *    The panel is switched back and forth as needed. 
  40.  *
  41.  *    Version:    2.0
  42.  *    Author:    Ken Fromm
  43.  *    History:
  44.  *            03-07-91        Added this comment.
  45.  */
  46.  
  47. #import "SaveAsPanel.h"
  48.  
  49. #import <appkit/ButtonCell.h>
  50. #import <appkit/Matrix.h>
  51. #import <appkit/TextField.h>
  52. #import <appkit/View.h>
  53. #import <appkit/nextstd.h>
  54.  
  55. #import <objc/hashtable.h>
  56. #import <objc/List.h>
  57. #import <objc/Object.h>
  58. #import <strings.h>
  59.  
  60. @implementation SaveAsPanel
  61.  
  62. - setAccessoryView:anObject
  63. {
  64.     if (anObject)
  65.         accessory = anObject;
  66.  
  67.     [super  setAccessoryView:anObject];
  68.  
  69.     return self;
  70. }
  71.  
  72. - setSave
  73. {
  74.     id        aview;
  75.  
  76.     aview = [[self  contentView]  findViewWithTag: NX_SPTITLEFIELD];
  77.     [aview  setStringValueNoCopy:"Save"];
  78.     [self  setAccessoryView:NULL];
  79.     [self  setRequiredFileType:"adb"];
  80.  
  81.     return self;
  82. }
  83.  
  84. - setSaveAs
  85. {
  86.     id        aview;
  87.  
  88.     aview = [[self  contentView]  findViewWithTag: NX_SPTITLEFIELD];
  89.     [aview  setStringValueNoCopy:"Save As"];
  90.     [self  setAccessoryView:NULL];
  91.     [self  setRequiredFileType:"adb"];
  92.  
  93.     return self;
  94. }
  95.  
  96. - setSaveTo
  97. {
  98.     id        aview;
  99.  
  100.     aview = [[self  contentView]  findViewWithTag: NX_SPTITLEFIELD];
  101.     [aview  setStringValueNoCopy:"Save To"];
  102.     [self  setAccessoryView:accessory];
  103.     [self  setRequiredFileType:"eps"];
  104.  
  105.     return self;
  106. }
  107.  
  108. - setFormat:(int) aFormat
  109. {
  110.     [[accessoryView  findViewWithTag: SP_BUTTONTAG]  selectCellWithTag:aFormat];
  111.  
  112.     return self;
  113. }
  114.  
  115. - (int) format
  116. {
  117.     return  [[accessoryView  findViewWithTag: SP_BUTTONTAG]  selectedTag];
  118. }
  119.  
  120. @end
  121.